Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Many phases of design, manufacturing, and runtime management of general purpose, graphics, digital signal processing (DSP), and network processors, static and dynamic random access memory (SRAM and DRAM), field programmable gate arrays (FPGA), and other semiconductor devices and systems are guided by applications that use these devices, and their properties. It is often important that devices and systems are optimized so that common case operations and applications are executed in time, area, and power efficient and reliable ways. In particular, it is often important to properly conclude which components of a device or a system are most often used.
Application properties also may be significant factors for optimization of integrated circuits in presence of manufacturing variability and component aging (e.g., due to negative bias temperature instability (NBTI) and hot carrier injection (HCI) for gates and transistors and electromigration for interconnects.
Long-term profiling information may be used to improve optimization at all levels of abstractions of synthesis flow, including architectural, micro-architectural, register-transfer level, sequential and combinatorial logic synthesis and physical design. The information may also be used to optimize yield and performance during manufacturing and for off-line runtime optimization by posing more accurate objectives and constraints to compiler, utility tools, operation system (OS), system level management and runtime management (e.g. variable voltage management, thermal management and cache line replacement policies).
Many design and runtime measures including latency, throughput, maximal power, energy, reliability can be improved by collecting and analyzing the frequency and other statistics of component usage of the pertinent integrated circuit. Ideally, the profiling is low cost, fast, accurate, and reliable.